package mac5789.projeto4.model;

/**
 * Modelo de recompenças
 * 
 * @author lundberg
 * 
 */
public interface RewardModel {

	/**
	 * Obtém o valor da recompensa no estado.
	 * 
	 * @param state estado
	 * @return recompensa
	 */
	double reward(State state);

	/**
	 * Obtém o custo da ação
	 * 
	 * @param action ação
	 * @return custo
	 */
	double cost(Action action);

	/**
	 * Obtém o fator de disconto
	 * 
	 * @return double
	 */
	double discountFactor();
}
